package org.finesys.ai.entity;

import org.finesys.common.mp.core.annotation.QueryWrappers;
import org.finesys.common.mp.core.base.BaseEntity;
import org.finesys.common.mp.core.constants.QueryWrapperConstants;
import org.finesys.common.sensitive.core.annotation.base.Sensitive;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;

import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * Embedding向量数据库配置表
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class AigcEmbedStore extends BaseEntity {
    @TableId(type = IdType.ASSIGN_UUID)
    private String id;
    /**
     * 别名
     */
    @QueryWrappers(condition = QueryWrapperConstants.LIKE)
    private String name;
    /**
     * 供应商
     */
    private String provider;
    /**
     * 地址
     */
    private String host;
    /**
     * 端口
     */
    private Integer port;
    /**
     * 用户名
     */
    private String userName;
    /**
     * 密码
     */
    @Sensitive
    private String password;
    /**
     * 数据库名称
     */
    private String databaseName;
    /**
     * 表名称
     */
    private String tableName;
    /**
     * 向量维数
     */
    private Integer dimension;
    /**
     * 删除标记
     */
    @TableLogic
    private String delFlag;
}
